package com.ben.multiple.util;

import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;

/**
 * 对外提供静态方法，同时被 springIOC 管理，可以引入其它依赖
 *
 * @author Ben
 * @date 2020/2/20
 */
@Component
public class SpringSelfUtils {
    private static SpringSelfUtils springSelfUtils;

    /**
     * 在依赖注入完成后被自动调用
     * 除了拦截器之外，方法绝不能有任何参数
     * 执行顺序	构造方法 > @Autowired > @PostConstruct
     */
    @PostConstruct
    void init() {
        springSelfUtils = this;
        test();
    }

    private void test() {
        System.out.println(springSelfUtils);
    }
}
